Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix performance issue #65

Merged
merged 5 commits into from
Oct 11, 2021

Conversation

andy840119
Copy link
Member

image
Fix issue found in #64

And what's fixed in this PR:

  • shared data should only create one instance brcause CreateDrawNode() will call 3 times if create a drawable(got no reason why 🤔 )
  • rewrite frame buffer GC logic, should call GLWrapper.ScheduleDisposal(() => Dispose(true)) and only dispose unneed frame buffer.
  • make shader buffers private in MultiShaderBufferedDrawNodeSharedData (code quality issue).

@andy840119 andy840119 added bug Something isn't working code quality labels Oct 11, 2021
@andy840119 andy840119 self-assigned this Oct 11, 2021
@andy840119
Copy link
Member Author

image
Note:
Not really sure why some frame-buffer is not being GC.

@andy840119 andy840119 force-pushed the fix-performance-issue branch from bb16a32 to 4d75b2c Compare October 11, 2021 03:54
andy840119 added 2 commits October 11, 2021 12:06
also prevent duplicated destroy and create if shaders are the same.
…highly related to shader.

it might cause not found issue if changing frame buffer dictionary and drawing at the same time.
@andy840119 andy840119 force-pushed the fix-performance-issue branch from 4d75b2c to f45d0b5 Compare October 11, 2021 04:07
@andy840119
Copy link
Member Author

GC works in framework test, but not really not sure why not working in ruleset 🤔
But guess it might be ok to just give it a merge.

@andy840119 andy840119 merged commit b5771d2 into karaoke-dev:master Oct 11, 2021
@andy840119 andy840119 deleted the fix-performance-issue branch October 11, 2021 06:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working code quality size/L
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant